Twilio Studioを使って自動音声応答のキープレスでの分岐の仕組みを作ってみた
こんにちは、昴です。
今回はTwilio Studioを使って自動音声応答のキープレスでの分岐の仕組みを作ってみました。今回は電話をかけてからキープレス1を押した場合と2を押した場合で分岐し、それぞれ対応する自動音声が流れる仕組みを作成します。
はじめに
Twilioは電話やSMS、チャットなどのコミュニケーション機能を組み込むためのクラウドベースのAPIプラットフォームです。TwilioのAPIを利用することで通信ソリューションを自由にカスタマイズして構築することができます。
今回はTwilioの機能の中でもTwilio Studioに注目していきたいと思います。
フロー作成
それではTwilio Studioでフローを作成していきます。
まずはTwilioのコンソール画面でStudioに移動し、「create a flow」を選択していきます。
「create a flow」を選択するとフローの名前を入力する画面が表示されますので名前を入力していきます。ここでは「自動音声応答②分岐」と名前を入力しました。
次に、フローを作成する上でのテンプレートを選択します。いくつかのテンプレートがあり、用途に合わせて選択していきます。今回は「Start from scratch」を選択していきます。これはテンプレートではなく始めから作成するものとなっています。
それではフローを作成していきます。
キープレスによる分岐
フロー作成では上部のTriggerからフローをスタートし、下に向かってフローを作成することができます。右側の各種ウィジェットをドラッグアンドドロップし、各ウィジェットを接続しながら作成していきます。
今回は音声通話の設定をするため、「Incoming Call」から設定していきます。
初めに使用するのは「Gather Input on Call」Widgetです。これは分岐をするにあたって、分岐の入力方法を決めるWidgetになります。ドラッグアンドドロップで移動したらTriggerのImcoming Callを繋げます。入力パターンにはUser Pressed Key(キープレスによる入力)、User Said Something(音声による入力)、No Input(入力がない場合)の3つがあります。今回はキープレスによる選択で分岐をしたいのでUser Pressed Keyの下にフローを続けて作成していきます。
また、次のWidgetに進む前にWidgetの設定を行います。まずWidgetの名前を入力します。(Widgetの名前は日本語では入力できません)
次に再生する文章を入力します。分岐するにあたり、「〇〇の方は1番、△△の方は2番を押してください。」といった内容を入力し、言語や声の種類、ループ回数を入力します。
続いて、Stop Gathering Afterの項目で何秒でこのWidgetを終了するかを設定します。入力パターンの1つにあったNo Input(入力がない場合)の判定の基準となります。例えばここで5Secondsと設定しておくと、音声が終了してから5秒経過後に入力がないとNo Inputとしてフローを進めます。今回は5Secondsで設定します。
続いて「Split Based on」Widgetです。これは実際に分岐をするWidgetになります。まずWidgetの名前を入力し、Variable to testで「widgets.gather_1.Digits」を選択します。
続いて、No Condition Macthesを「Gather Input on Call」に繋げます。こうすることで入力が間違っていた場合、再びGather Input on Callから音声が再生されやり直せます。
自動音声
ここで一度各キープレスに対応する自動音声を2つ作成します。
自動音声は右のWidget一覧からVoice > Say/Playを選びドラッグアンドドロップで移動します。Widgetの設定では再生したい文章を入力し、言語、音声の種類、ループする回数を選択します。具体的な「Say/Play」の設定方法は下記ブログをご参照ください。
初心者目線でTwilio Studioを使って自動音声応答を作ってみた
それでは実際の分岐を作成しますが、WidgetのTransitionsタブで「NEW CONDITION」の+ボタンを選択すると、「If value equal_to...」という欄が作成されます。ここで、キープレスの入力値と繋げるWidgetを選択します。これを分岐の数だけ行います。
以上で、キープレスでの分岐の仕組みの作成が完了となります。
最後に画面上部の「Publish」をクリックしてフローを公開し、電話番号に接続して完了となります。
電話番号に接続
続いて作成したフローを電話番号に接続していきます。コンソール画面のPhone Numbers > Manage > Active numbersへ移動し、接続したい電話番号を選択します。
電話番号を選択すると設定画面が開くため、下へスクロールしMessaging Configuration欄のA call comes inで「Studio Flow」を選択し、先ほど作成したフロー「自動音声応答②分岐」を選択していきます。
最後に「Save configuration」を選択して設定を保存します。これで設定は完了となります。
まとめ
今回はTwilioにおいて、Twilio Studioを使って自動音声応答のキープレスでの分岐の仕組みを作ってみました。コード編集が必要なく誰でも作成できるかと思います。本ブログが少しでも参考になれば幸いです。